When image sensing is performed by a digital still camera, a digital video camera, or the like, the image data input from an imaging sensor, such as a CCD or a CMOS sensor, is influenced by a developing process (a luminance adjustment, a color tone adjustment, sharpness processing, and the like). The resultant data is then JPEG Baseline coded and stored as a file in a predetermined storage medium (memory card) (for example, Japanese Patent Laid Open No. 3-49483).
This coding, however, is loss coding, and hence accompanies the losses of some information. That is, there is a limit to the readjustment of a JPEG image file on a personal computer; this coding does not allow fine adjustment often requested by experienced users.
In order to meet such demands, there may be provided a technique of storing unprocessed image data in a storage medium, immediately after it is obtained by an imaging sensor, without any change or upon lossless compression, and performing, on a PC, a process similar to a developing process performed in a digital camera. Such unprocessed image data is generally called raw image data. Performing a developing process on this raw image data on the PC makes it possible to perform elaborate developing so as to meet the demand of the power users.
When, however, a developing process for raw image data is to be done on the PC, it is necessary to perform pixel interpolation processing and white balance processing in accordance with light source information at the time of imaging, and luminance adjustment processing, color tone adjustment processing, and sharpness processing in accordance with conditions set by an operator, e.g., an exposure time, a shutter speed, and a zoom position, and the like.
The above developing process must be done for each pixel. In recent digital cameras, the number of pixels of sensed images is generally several millions or exceeds ten million, and hence it requires much time to obtain the result of a developing process after it is started.
As conceivable techniques for solving the above problem, the present inventor has considered the following techniques.
The first technique is to perform image processing upon decimating pixels and display a reduced image or reproduce a low resolution image processing result.
The second technique is to limit the display area, perform image processing for only part of the image data which can be displayed within the display area, and reproduce the image processing result.
The third technique is to hold the image processing result, on an overall image, in a storage medium such as a memory and use it for reproduction.
The fourth technique is to hold a plurality of image quality adjustment processing results of an overall image in a storage medium, such as a memory, and use them for the reproduction and the display of processing results after image quality adjustments.
According to the first technique, an increase in the number of decimated pixels will shorten the processing time until reproduction. However, as the number of decimated pixels increases, images with lower resolutions are displayed. Such images are therefore not suitable for either sharpness processing evaluation, or noise reduction processing, and the like.
According to the second technique, since an image is partly processed, the overall image cannot be checked. This technique is therefore not suitable for evaluating the overall color tone after white balance processing or color adjustments. In addition, limiting a display area will eliminate the degree of freedom of the user's operation.
The third technique requires a lot of time for the first reproduction and/or processing. In addition, when image quality adjustment is performed, the image processing needs to be executed again. Each such operation is time consuming.
The fourth technique requires much time for the first reproduction and/or processing. This technique may be effective when the number of types of parameters that can be used for image quality adjustment is small. However, since there is a tendency towards diversification of image quality adjustments, even processing results which the user does not require may be held, resulting in an increase in the computational load.
Furthermore, with improvements in image quality, image processing tends to become more complex. In addition, the number of pixels constituting an image tends to increase. It is therefore necessary to speed up reproduction and image processing.